﻿using Common.Entitys.CommonLogs;
using Common.Utils;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Common.ViewModels.调度
{
    public class 上料分配
    {
        //public void Deal

        /// <summary>
        /// 添加工件(默认工件1)
        /// </summary>
        public int 当前工件编号 { get; set; } = 1;

        /// <summary>
        /// 小车移动到(上料站有小车时)
        /// </summary>
        /// <param name="car"></param>
        public void 添加工件(Car car)
        {
            //当前工件编号++;//在系统上添加工件
            //int num = 当前工件编号;
            //工件 工件 = new 工件()
            //{
            //    Name = $"工件{当前工件编号}",
            //    Num = num,
            //};
            //工件.WorkStations = GetWorkStations();
            ////这个时候工件是有小车的,让小车将工件运输到指定站点
            ////WorkStation start
            //片区 片区 = Get片区(工件.WorkStations[0], out string error);
            //if (!string.IsNullOrEmpty(error))
            //{
            //    LogHelp.AddLog<ErrorLogEntity>($"当前工位类型 {工件.WorkStations[0].Name} 没有找到对应片区");
            //}

            //这里将小车带着料移动到指定片区
            // 工件发起请求 去某个站点 。//这里还需要片区给出明确的站点
            
        }

        /// <summary>
        /// 获取工站信息
        /// </summary>
        /// <returns></returns>
        public List<工位类型> GetWorkStations()
        {
            List<工位类型> workTypes = new();
            return workTypes;
        }

        /// <summary>
        /// 工位类型
        /// </summary>
        /// <param name="workType"></param>
        /// <returns></returns>
        public 片区 Get片区(工位类型 workType,out string error)
        {
            error = "";
            foreach (var item in ProductLine.Instance.片区s)
            {
                foreach (var cz in item.工作池子)
                {
                    if(cz.工位类型== workType)
                    {
                        return item;
                    }
                }
            }
            error = $"未能找到对应的片区";
            return null;
        }




        //public PassVM 
    }
}
